﻿using System.Web;
using System.Web.SessionState;

// ReSharper disable once CheckNamespace
namespace com.nm.interfaces
{
    /// <summary>
    ///
    /// </summary>
    public interface ISessionContext
    {
        /// <summary>
        /// Session
        /// </summary>
        HttpSessionState Session { get; }

        /// <summary>
        /// 当前请求信息
        /// </summary>
        HttpRequest Request { get; }

        /// <summary>
        /// 页面返回信息
        /// </summary>
        HttpResponse Response { get; }

        /// <summary>
        /// 服务器相关
        /// </summary>
        HttpServerUtility Server { get; }

        /// <summary>
        /// HttpContext
        /// </summary>
        HttpContext Context { get; }

        /// <summary>
        /// 当前用户ID
        /// </summary>
        int UserId { get; }

        /// <summary>
        /// Controller
        /// </summary>
        string Controller { get; }

        /// <summary>
        /// Action
        /// </summary>
        string Action { get; }

        /// <summary>
        /// 是否後臺方法
        /// </summary>
        bool IsBackend { get; }
    }
}